{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf230
{\fonttbl\f0\fswiss\fcharset0 Helvetica;\f1\fnil\fcharset0 Consolas;}
{\colortbl;\red255\green255\blue255;}
{\*\listtable{\list\listtemplateid1\listhybrid{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{decimal\}.}{\leveltext\leveltemplateid1\'02\'00.;}{\levelnumbers\'01;}\fi-360\li720\lin720 }{\listname ;}\listid1}
{\list\listtemplateid2\listhybrid{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{decimal\}.}{\leveltext\leveltemplateid101\'02\'00.;}{\levelnumbers\'01;}\fi-360\li720\lin720 }{\listname ;}\listid2}
{\list\listtemplateid3\listhybrid{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{decimal\}.}{\leveltext\leveltemplateid201\'02\'00.;}{\levelnumbers\'01;}\fi-360\li720\lin720 }{\listname ;}\listid3}}
{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}{\listoverride\listid3\listoverridecount0\ls3}}
\paperw11900\paperh16840\margl1440\margr1440\vieww24460\viewh18600\viewkind0
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural

\f0\b\fs48 \cf0 Shuffle Developer Setup Guide\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural

\b0\fs24 \cf0 \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural

\fs36 \cf0 Introduction
\fs24 \
\
Shuffle uses Maven for building and dependency management.\
\

\fs36 Prerequisites
\fs24 \
\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural
\ls1\ilvl0\cf0 {\listtext	1.	}Maven 3.0.x - http://maven.apache.org/download.html\
{\listtext	2.	}Google Protocol Buffer compiler - http://code.google.com/p/protobuf/downloads/list\
{\listtext	3.	}Android SDK - http://developer.android.com/sdk/index.html\
{\listtext	4.	}Set environment variable ANDROID_HOME to the path of your installed Android SDK and add $ANDROID_HOME/tools as well as $ANDROID_HOME/platform-tools to your $PATH. (or on Windows %ANDROID_HOME%\\tools and %ANDROID_HOME%\\platform-tools).\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural
\cf0 \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural

\b \cf0 Installing missing artifacts\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural

\b0 \cf0  \
I couldn't find c2dm or flurry sdk in any publicly available maven repository, so you'll need to install them manually.\
\
From lib directory run...\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural

\f1 \cf0 mvn install:install-file -Dfile=c2dm-server.jar -Dsources=c2dm-server-src.jar -DgroupId=com.google.android.c2dm -DartifactId=c2dm-server -Dversion=1.5.5 -Dpackaging=jar\
mvn install:install-file -Dfile=c2dm.jar -Dsources=c2dm-sources.jar -DgroupId=com.google.android.c2dm -DartifactId=c2dm -Dversion=1.5.5 -Dpackaging=jar\
mvn install:install-file -Dfile=FlurryAgent.jar -DgroupId=com.flurry -DartifactId=flurry-sdk -Dversion=2.2.1 -Dpackaging=jar\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural

\f0 \cf0 \
Clone git repo from here https://github.com/mosabua/maven-android-sdk-deployer\
Then from a shell in your local clone...\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural

\f1 \cf0 mvn clean install -N\
cd extras\
mvn clean install\
#To compile from the command line, you'll also need to generate v3 since the maven android\
#plugin is ignoring the exclude\
mvn clean install -DPkg.Revision=3\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural

\f0 \cf0 \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural

\fs36 \cf0 Eclipse integration\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural

\fs24 \cf0 \
Download the Google Eclipse plugin and the GWT and Google App Engine SDK versions corresponding to those currently used by Shuffle.\
\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural

\b \cf0 Android\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural

\b0 \cf0 \
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural
\ls2\ilvl0\cf0 {\listtext	1.	}Install m2e-android connector from http://rgladwell.github.com/m2e-android/updates/master/ (note this is an Eclipse update site link)\
{\listtext	2.	}Follow instructions here: http://rgladwell.github.com/m2e-android/\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural
\cf0 \
If you have issues getting the connector going, check this issue out\'85 {\field{\*\fldinst{HYPERLINK "https://github.com/rgladwell/m2e-android/issues/48"}}{\fldrslt https://github.com/rgladwell/m2e-android/issues/48}}\
\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural

\b \cf0 Google App Engine and GWT\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural

\b0 \cf0 \
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural
\ls3\ilvl0\cf0 {\listtext	1.	}Install m2eclipse-wtp http://download.jboss.org/jbosstools/updates/m2eclipse-wtp\
{\listtext	2.	}Install m2e connector for build-helper-maven-plugin This should happen automatically when you import a project that requires it. If not, you'll see an error in the POM. To install it, go to Window > Preferences > Discovery > Open Catalog and install the buildhelper connector, then re-import the project from scratch.\
{\listtext	3.	}Import your maven project into eclipse using m2eclipse import wizard.\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural
\cf0 \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural

\b \cf0 Troubleshooting
\b0 \
\
If you get the following error in Eclipse, in Project preferences > Google switch to using the GWT and GAE versions from Google rather than the ones in your local repository.\
\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural

\f1 \cf0 The type javax.validation.ConstraintViolation cannot be resolved. It is indirectly referenced from required .class files\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural

\f0 \cf0 \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural

\fs36 \cf0 IntelliJ integration\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural

\fs24 \cf0 \
For OS X, you'll probably need to set ANDROID_HOME in ~/.MacOSX/environment.plist, logout then in again. See http://developer.apple.com/library/mac/#qa/qa2001/qa1067.html\
\
New project > Import project from external model > Maven\
Remove GWT facet from all but the shuffle-app-engine module\
\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural

\b \cf0 Troubleshooting
\b0 \
\
If the android-shuffle module is setup with the Java 1.6 SDK, you need to replace it with the Android SDK.\
Right click shuffle-android and select Project Structure\
Click on SDKs and add Android 2.2 Platform\
Click on Modules > shuffle-android > Dependencies and select Android 2.2 SDK\
\
\
}